Learning Recursive Sequences via Evolution of Machine-Language Programs
نویسنده
چکیده
We use directed search techniques in the space of computer programs to learn recursive sequences of positive integers. Specifically, the integer sequences of squares, x; cubes, x; factorial, x!; and Fibonacci numbers are studied. Given a small nite pre x of a sequence, we show that three directed searches|machine-language genetic programming with crossover, exhaustive iterative hill climbing, and a hybrid (crossover and hill climbing)|can automatically discover programs that exactly reproduce the nite target pre x and, moreover, that correctly produce the remaining sequence up to the underlying machine's precision. Our machine-language representation is generic|it contains instructions for arithmetic, register manipulation and comparison, and control ow. We also introduce an output instruction that allows variablelength sequences as result values. Importantly, this representation does not contain recursive operators; recursion, when needed, is automatically synthesized from primitive instructions. For a xed set of search parameters (e.g., instruction set, program size, tness criteria), we compare the e ciencies of the three directed search techniques on the four sequence problems. For this parameter set, an evolutionary-based search always outperforms exhaustive hill climbing as well as undirected random search. Since only the pre x of the target sequence is variable in our experiments, we posit that this approach to sequence induction is potentially quite general.
منابع مشابه
gramEvol: Grammatical Evolution in R
We describe an R package which implements grammatical evolution (GE) for automatic program generation. By performing an unconstrained optimisation over a population of R expressions generated via a user-defined grammar, programs which achieve a desired goal can be discovered. The package facilitates the coding and execution of GE programs, and supports parallel execution. In addition, three app...
متن کاملMeta-Interpretive Learning of Data Transformation Programs
Data transformation involves the manual construction of large numbers of special-purpose programs. Although typically small, such programs can be complex, involving problem decomposition, recursion, and recognition of context. Building such programs is common in commercial and academic data analytic projects and can be labour intensive and expensive, making it a suitable candidate for machine l...
متن کاملaphic Limitations se Logic Programs
An active area of research in machine learning is learning logic programs from examples. This paper investigates formally the problem of learning a single Horn clause: we focus on generalizations of the language of constant-depth determinate clauses, which is used by several practical learning systems. We show first that determinate clauses of logarithmic depth are not learnable. Next we show t...
متن کاملتحلیل رابطه بین اختلالات یادگیری و اختلالات زبان در دانشآموزان مقطع ابتدایی
Objective: This research was designed to study the relationship between learning disorders and language difficulties in elementary school students with learning disabilities. Materials & Methods: The method of research was a correlaticve qualitative study. A sample of 50 elementary school students was selected from learning disabilitiy center in Maybod city. Wechsler Intelligence Test and My...
متن کاملCryptographic Limitations on Learning One-Clause Logic Programs
An active area of research in machine learning is learning logic programs from examples. This paper investigates formally the problem of learning a single Horn clause: we focus on generalizations of the language of constant-depth determinate clauses, which is used by several practical learning systems. We show rst that determinate clauses of logarithmic depth are not learnable. Next we show tha...
متن کامل